﻿using System;
namespace Producers.Liiklusregister.Xtee.Riik.Ee.Producer.Liiklusregister {
    
    
    public partial class Juhtimisoigus : global::Producers.Liiklusregister.Xtee.Riik.Ee.Producer.Liiklusregister.IJuhtimisoigus {
        
        private string @__olek;
        
        private string @__olekuAeg;
        
        private string @__juhtimisoigusPeatAlgKp;
        
        private string @__juhtimisoigusPeatLoppKp;
        
        private string @__alus;
        
        private string @__markus;
        
        public Juhtimisoigus() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public Juhtimisoigus(string @olek, string @olekuAeg, string @juhtimisoigusPeatAlgKp, string @juhtimisoigusPeatLoppKp, string @alus, string @markus) {
            this.@__olek = @olek;
            this.@__olekuAeg = @olekuAeg;
            this.@__juhtimisoigusPeatAlgKp = @juhtimisoigusPeatAlgKp;
            this.@__juhtimisoigusPeatLoppKp = @juhtimisoigusPeatLoppKp;
            this.@__alus = @alus;
            this.@__markus = @markus;
        }
        
        /// <summary>
        /// Required parameters
        /// </summary>
        public Juhtimisoigus(string @olek, string @olekuAeg, string @markus) {
            this.@__olek = @olek;
            this.@__olekuAeg = @olekuAeg;
            this.@__markus = @markus;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected Juhtimisoigus(IJuhtimisoigus @juhtimisoigus) {
            this.@__olek = @juhtimisoigus.Olek;
            this.@__olekuAeg = @juhtimisoigus.OlekuAeg;
            this.@__juhtimisoigusPeatAlgKp = @juhtimisoigus.JuhtimisoigusPeatAlgKp;
            this.@__juhtimisoigusPeatLoppKp = @juhtimisoigus.JuhtimisoigusPeatLoppKp;
            this.@__alus = @juhtimisoigus.Alus;
            this.@__markus = @juhtimisoigus.Markus;
        }
        
        public virtual string Olek {
            get {
                return this.@__olek;
            }
            set {
                this.@__olek = value;
            }
        }
        
        public virtual string OlekuAeg {
            get {
                return this.@__olekuAeg;
            }
            set {
                this.@__olekuAeg = value;
            }
        }
        
        public virtual string JuhtimisoigusPeatAlgKp {
            get {
                return this.@__juhtimisoigusPeatAlgKp;
            }
            set {
                this.@__juhtimisoigusPeatAlgKp = value;
            }
        }
        
        public virtual string JuhtimisoigusPeatLoppKp {
            get {
                return this.@__juhtimisoigusPeatLoppKp;
            }
            set {
                this.@__juhtimisoigusPeatLoppKp = value;
            }
        }
        
        public virtual string Alus {
            get {
                return this.@__alus;
            }
            set {
                this.@__alus = value;
            }
        }
        
        public virtual string Markus {
            get {
                return this.@__markus;
            }
            set {
                this.@__markus = value;
            }
        }
    }
}
